Within the modern communications network space, various standards are used to create and terminate connections. Among these, there is Multi-Protocol Label Switching (MPLS); Generalized Multi-Protocol Label Switching (GMPLS); Label Distribution Protocol (LDP);Private Network-Network Interface (PNNI); Resource Reservation Setup Protocol (RSVP), and others. As is known in the art, all of these connection-oriented protocols (such as, for example, MPLS/GMPLS; LDP/CR-LDP); PNNI; RSVP etc.) provide a protocol for computing a path through a network, and reserving resources of each node involved in the path. Typically, for each node of the path, resource reservation involves designating involved input and output ports, as well as a portion of the bandwidth capacity of each designated port required for the connection. However, in order to set-up the end-to-end connection, and thereby enable a flow of subscriber traffic, each node must compute and set up the cross-connection through its switch fabric between the designated ports. This step of computing and establishing the cross-connection is referred to herein as “downloading” the cross-connection. The reverse process, that is the removal of the cross-connection so that resources of the node can be released for use by other connections, is referred to herein as “undownloading” the cross-connection. The process of downloading cross-connections is illustrated in FIG. 1, for the example of the proposed Constrain-based Routed-Label Distribution Protocol (CR-LDP).
FIG. 1 shows a representative path 2 mapped through a CD-LDP network between an ingress node 4 and an egress node 6, and traversing three intermediate nodes N1-N3. As shown in FIG. 1, once the path 2 has been computed and resources reserved (at 8), a Label_Map message 10 is propagated hop-by-hop from the egress node 6. In response to the Label_Map message, each intermediate node N1-N3 downloads (at 12) the required cross-connection through the node between respective input and output ports for which resources have been reserved to the connection. Thus, for example, the respective controller unit (not shown) of intermediate node N3 computes the cross-connection between ports F and G, and then establishes the computed cross-connection through its switch fabric (not shown), so that subscriber traffic of the connection will be properly routed through that node. Upon successful completion of the download, the Label_Map message 10 is then forwarded to intermediate node N2, which executes the cross-connection download between its ports D and E. Upon successful completion of the download, node N2 forwards the Label_Map message 10 to node N1, and so on, until the Label_Map message 10 arrives at the ingress node 4. The ingress node 4 responds to the Label-Map message 10 by notifying the subscriber (not shown) that the connection 2 has been established, and is ready to convey traffic, and logs the connection for billing purposes.
A directly analogous process is used when the connection is to be terminated, and the resources released. Thus, as shown in FIG. 2, a Label_Withdraw message (continuing the above CR-LDP example) is propagated hop-by-hop through the connection 2 from the egress node 6. In response to the Label_Withdraw message 14, each intermediate node N1-N3 un-downloads the cross-connection through the node, so that switch fabric and port resources dedicated to the connection 2 are released. Upon successful completion of the un-download, the Label_Withdraw message 14 is then forwarded to the next node, and so on. When the Label_Withdraw message 14 arrives at the ingress node 4, termination of the connection is complete and can be logged for billing purposes.
A limitation of the above connection creation/termination process is that connection download and undownload process require a certain amount of time to complete. For example, in large routers or switches, the process of computing and establishing a cross-connection between input and output ports can take a relatively long time. Since this operation must be performed in each node involved in the connection 2, the cumulative time required to create the connection can become significant. This is particularly disadvantageous in the case of failure restoration, where it becomes necessary to create a protection connection around a failed link. Clearly, any delay in restoring traffic flow between the ingress and egress nodes 4 and 6 is undesirable, and should be minimised.
Accordingly, techniques for efficiently downloading/undownloading cross-connections in a network remain highly desirable.